<?php

/**
 * Created by IntelliJ IDEA.
 * User: keke
 * Date: 18-10-18
 * Time: 下午8:50
 */


$pagesize = 10;
/**
 * @param $status
 * @param $message
 * @return false|string
 */
function jsoncall($status, $message)
{
    $json = array('status' => $status, 'mes' => $message);
    return json_encode($json);
}

/**
 * @param $passwd
 * @return mixed
 * 加密密码
 */
function enpasswd($passwd)
{
    $salt = "sdafaffbf";
    return md5($passwd);
}

/**
 * @param $mes
 * @param $url
 * 页面跳转
 */
function alertMes($mes, $url)
{
    echo "<script>alert('{$mes}');</script>";
    echo "<script>window.location='{$url}';</script>";
}


/**
 * 注销
 */
function logout()
{
    session_destroy();
    header("location:login.html");
}

function checkAdmin()
{
    if ($_SESSION['rank'] != 2) {
        alertMes("无管理员登录","../login.html");
    }

}


function checkLogined()
{
    if (isset($_SESSION['loginflag'])) {
        alertMes("请先登陆", "login.php");
    }
}

/**
 * @param $uid
 * @return false|string
 * 修改密码
 */
function changePass($uid)
{
    $sql = "SELECT * FROM users WHERE uid = '$uid'";
    $query = $GLOBALS['conn']->query($sql);
    $result = $query->fetch_array();
    $oldpasswd = $_POST['oldpasswd'];
    $passwd = enpasswd($_POST['passwd']);
    $veriypasswd = enpasswd($_POST['veriypasswd']);
    if ($passwd !== $veriypasswd) {
        return jsoncall(-1, "密码不一致");
    }
    if ($oldpasswd != $result['passwd']) {
        return jsoncall(-1, "旧密码不成功");
    }
    $sql = "UPDATE users SET passwd='$passwd' WHERE uid = '$uid'";
    $query = $GLOBALS['conn']->query($sql);
    if ($query) {
        return jsoncall(1, "修改密码成功");
    } else {
        return jsoncall(-1, "修改密码失败请重试");
    }

}

function uploadfile($myfile, $max_file_size, $filepath)//自定义上传文件的函数
/*********************************
    $myfile: $_FILES['pic'];
    $max_file_size:文件的最大上传大小；
    $allowtype：上传文件的允许类型数组；
    $filepath：目标文件保存的文件夹路径
 *************************************/
{
    $allowtype = array("jpg", "png", "bmp", "doc", "docx");
    //1.判断错误信息
    switch ($myfile['error']) {
        case '1':
            jsoncall(-1, "文件大小超出php配置文件中的最大值");
            break;
        case '2':
            jsoncall(-1, "文件大小超出html中设定的最大值");
            break;
        case '3':
            jsoncall(-1, "文件部分上传");
            break;
        case '4':
            jsoncall(-1, "没有文件上传");
            break;
        case '6':
            jsoncall(-1, "找不到临时文件夹");
            break;
        case '7':
            jsoncall(-1, "文件写入失败");
            break;
    }
    if ($myfile['error'] > 0) {
        jsoncall(-1, "文件上传出现错误");
        return false;
    }
    //2.设定上传文件大小
    if ($myfile['size'] > $max_file_size) {
        jsoncall(-1, "上传文件大小超过最大值");
        return false;
    }
    //3.判断文件扩展名是否合理
    $arr = explode(".", $myfile['name']);//将上传文件名用.分割成数组
    $ext = $arr[count($arr) - 1];//数组的最后一个元素就是上传文件的扩展名
    if (!in_array($ext, $allowtype))//判断扩展名是否是允许上传的类型
    {
        jsoncall(-1, "上传文件类型不是图像文件");
        return false;
    }
    //4.给文件起随机名，根据上传日期时间起名
    $randname = date("Y") . date("m") . date("d") . date("H") . date("i") . date("s") . rand(100, 999) . "." . $ext;

    //5.移动上传文件到目标路径
    if (!move_uploaded_file($myfile['tmp_name'], $filepath . $randname)) {
        jsoncall(-1, "移动上传文件到目标路径失败");
        return false;
    }

    return $randname;//文件上传成功,返回实际存储路径
}
